const { DataTypes } = require('sequelize')
const seq = require('../utils/seq')
const moment = require('moment')

/**
 *任务id：id UUID
  项目id UUID
  任务名称：name string
  任务描述：desc text
  状态：status Integer 1待办的/2进行中/3已完成/4已拒绝
  优先级：priority Integer 1无优先级/2不重要/3次要/4主要/5重要
  标签：tag string
  开始时间：begin_time
  结束时间：end_time
 */

module.exports = seq.define('project_task', {
  id: {
    type: DataTypes.UUID,
    primaryKey: true,
    allowNull: false,
    defaultValue: DataTypes.UUIDV4,
    comment: '项目任务id'
  },
  pid: {
    type: DataTypes.UUID,
    allowNull: false,
    comment: '项目表外键'
  },
  name: {
    type: DataTypes.STRING,
    allowNull: false,
    comment: '任务名称'
  },
  desc: {
    type: DataTypes.STRING,
    allowNull: true,
    defaultValue: '',
    comment: '任务描述'
  },
  priority: {
    type: DataTypes.INTEGER,
    allowNull: false,
    comment: '优先级 1无优先级/2不重要/3次要/4主要/5重要'
  },
  tag: {
    type: DataTypes.STRING,
    allowNull: true,
    defaultValue: '',
    comment: '标签'
  },
  status: {
    type: DataTypes.INTEGER,
    allowNull: false,
    comment: '任务状态 1待办的/2进行中/3已完成/4已拒绝'
  },
  begin_time: {
    type: DataTypes.STRING,
    defaultValue: moment().format('YYYY-MM-DD HH:mm:ss'),
    comment: '开始时间'
  },
  end_time: {
    type: DataTypes.STRING,
    defaultValue: moment().format('YYYY-MM-DD HH:mm:ss'),
    comment: '结束时间'
  }
})